//
//  LBOCPayManager.h
//  Expecta
//
//  Created by 苗治会 on 2020/2/25.
//

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

#define WEIXINPAYFLAG @"wxpay"
#define ALIPAYFLAG @"alipay"
#define UNIONPAYFLAG @"unionpay"

typedef enum : NSUInteger {
    PayResultSuccess,
    PayResultFailure,
    PayResultCancel
} PayResult;

typedef enum : NSUInteger {
    PayTypeWX,
    PayTypeAli,
    PayTypeUnion
} PayType;

typedef void(^CompleteCallBack)(PayResult resultCode,NSString *resultMessage);

@interface LBOCPayManager : NSObject

+ (instancetype)shareManager;

/*
 1、需要在didFinishLaunchingWithOptions中调用
 2、依赖的微信SDK要在1.8.6(不包含)以下，因为1.8.6之后需要universalLink，目前还没配置
 */
- (void)registerApp;

- (BOOL)handleUrl:(NSURL *)url;

/// 支付入口
/// @param payType 支付类型
/// @param orderMessage 支付信息
/// @param sourceVC 调用支付的控制器(银联需要，其他支付方式可以传nil)
/// @param callBack 支付回调
- (void)payWithType:(PayType)payType orderMessage:(id)orderMessage viewController:(UIViewController *)sourceVC callBack:(CompleteCallBack)callBack;

@end

NS_ASSUME_NONNULL_END
